8fd2e7ebe99c4e564b20a5010076fe4287d7244c,plugins/org.eclipse.xtend.ide/src/org/eclipse/xtend/ide/quickfix/CreateXtendTypeQuickfixes.java,CreateXtendTypeQuickfixes,addQuickfixes,#Issue#IssueResolutionAcceptor#IXtextDocument#XtextResource#EObject#EReference#,80
Before Change
IXtextDocument xtextDocument, XtextResource resource,
EObject referenceOwner, EReference unresolvedReference)
throws Exception {
String typeName = xtextDocument.get(issue.getOffset(), issue.getLength());
if (unresolvedReference == XbasePackage.Literals.XCONSTRUCTOR_CALL__CONSTRUCTOR) {
if(((XConstructorCall)referenceOwner).getConstructor().eIsProxy()) {
newJavaClassQuickfix(typeName, resource, issue, issueResolutionAcceptor);
newXtendClassQuickfix(typeName, resource, issue, issueResolutionAcceptor);
newLocalXtendClassQuickfix(typeName, resource, issue, issueResolutionAcceptor);
}
} else if(unresolvedReference == XbasePackage.Literals.XTYPE_LITERAL__TYPE
|| unresolvedReference == TypesPackage.Literals.JVM_PARAMETERIZED_TYPE_REFERENCE__TYPE) {
EStructuralFeature eContainingFeature = referenceOwner.eContainingFeature();
if(eContainingFeature == XtendPackage.Literals.XTEND_CLASS__EXTENDS) {
newJavaClassQuickfix(typeName, resource, issue, issueResolutionAcceptor);
newXtendClassQuickfix(typeName, resource, issue, issueResolutionAcceptor);
newLocalXtendClassQuickfix(typeName, resource, issue, issueResolutionAcceptor);
} else if(eContainingFeature == XtendPackage.Literals.XTEND_CLASS__IMPLEMENTS
|| eContainingFeature == XtendPackage.Literals.XTEND_INTERFACE__EXTENDS) {
newJavaInterfaceQuickfix(typeName, resource, issue, issueResolutionAcceptor);
After Change
boolean isLocal = isEmpty(explicitPackage) || explicitPackage.equals(getPackage(resource));
if(isLocal)
explicitPackage = "";
if(isEmpty(packageAndType.getSecond()))
return;
if (unresolvedReference == XbasePackage.Literals.XCONSTRUCTOR_CALL__CONSTRUCTOR) {
if(((XConstructorCall)referenceOwner).getConstructor().eIsProxy()) {
if(isTypeMissing(referenceOwner, typeName, explicitPackage)) {
newJavaClassQuickfix(typeName, explicitPackage, resource, issue, issueResolutionAcceptor);
newXtendClassQuickfix(typeName, explicitPackage, resource, issue, issueResolutionAcceptor);
if(isLocal)
newLocalXtendClassQuickfix(typeName, resource, issue, issueResolutionAcceptor);
}
}
} else if(unresolvedReference == XbasePackage.Literals.XTYPE_LITERAL__TYPE
|| unresolvedReference == TypesPackage.Literals.JVM_PARAMETERIZED_TYPE_REFERENCE__TYPE) {
EStructuralFeature eContainingFeature = referenceOwner.eContainingFeature();
if(eContainingFeature == XtendPackage.Literals.XTEND_CLASS__EXTENDS) {
newJavaClassQuickfix(typeName, explicitPackage, resource, issue, issueResolutionAcceptor);
newXtendClassQuickfix(typeName, explicitPackage, resource, issue, issueResolutionAcceptor);
if(isLocal)
newLocalXtendClassQuickfix(typeName, resource, issue, issueResolutionAcceptor);
} else if(eContainingFeature == XtendPackage.Literals.XTEND_CLASS__IMPLEMENTS
|| eContainingFeature == XtendPackage.Literals.XTEND_INTERFACE__EXTENDS) {
newJavaInterfaceQuickfix(typeName, explicitPackage, resource, issue, issueResolutionAcceptor);